package com.google.common.annotations;

import java.lang.annotation.*;

/**
 * 表示公共API(公共类、方法或字段)还处于Beta阶段，未来可能会产生不兼容性的问题，甚至有可能在未来的版本中删除。
 * 带有此注释的API不受其包含库所做的任何兼容性保证。
 * 注意，这个注释的存在并不意味着API的质量或性能有什么问题，只表明它尚处于Beta阶段。
 * <p>
 * 该注解将被用来标注guava中一些尚处于Bate阶段的方法
 */
// 该注解被存放于编译后的.class文件中。但无法在运行时被反射访问
@Retention(RetentionPolicy.CLASS)
// 该注解可以作用于几乎所有类型的数据上。包括属性字段
@Target({
        ElementType.ANNOTATION_TYPE,
        ElementType.CONSTRUCTOR,
        ElementType.FIELD,
        ElementType.METHOD,
        ElementType.TYPE
})
@Documented
@GwtCompatible
public @interface Beta {}
